#include <stdio.h>

int main(int argc, const char *argv[])
{
	int a = 10;
	int b = 20;

	// const int *p
	const int *p1 = &a;
	// *p1 = 1234; // 错误的
	a = 1234; // 通过变量名是可以修改的 因为a没有被const修饰
	p1 = &b; // 正确的

	// int const *p
	// 和上面的用法一模一样 课下可以自己验证 --一般不用这种写法

	// int * const p
	int * const p2 = &a;
	*p2 = 5678; // 正确的 
	//p2 = &b; // 错误的
	
	// const int * const p
	const int * const p3 = &a;
	//*p3 = 1122; // 错误的
	//p3 = &b;	// 错误的

	return 0;
}
